var prefix = ctx + "cardcecp/batchSendEcpTask";
$(function () {
    load();
    laydate.render({
        elem: '#startTimeFormat',
        range: true,
        change: function (value, date, endDate) {//日期时间被切换后的回调
            $("#startTimeStart").val(date.year + "-" + date.month + "-" + date.date);
            $("#startTimeEnd").val(endDate.year + "-" + endDate.month + "-" + endDate.date + " 23:59:59");
        }
    });

    laydate.render({
        elem: '#createTimeFormat',
        range: true,
        change: function (value, date, endDate) {//日期时间被切换后的回调
            $("#createTimeStart").val(date.year + "-" + date.month + "-" + date.date);
            $("#createTimeEnd").val(endDate.year + "-" + endDate.month + "-" + endDate.date + " 23:59:59");
        }
    });
});

function load() {
    $('#exampleTable')
        .bootstrapTable(
            {
                method: 'get', // 服务器数据的请求方式 get or post
                url: prefix + "/list", // 服务器数据的加载地址
                //	showRefresh : true,
                //	showToggle : true,
                //	showColumns : true,
                iconSize: 'outline',
                toolbar: '#exampleToolbar',
                striped: true, // 设置为true会有隔行变色效果
                dataType: "json", // 服务器返回的数据类型
                pagination: true, // 设置为true会在底部显示分页条
                // queryParamsType : "limit",
                // //设置为limit则会发送符合RESTFull格式的参数
                singleSelect: false, // 设置为true将禁止多选
                // contentType : "application/x-www-form-urlencoded",
                // //发送到服务器的数据编码类型
                pageSize: 10, // 如果设置了分页，每页数据条数
                pageNumber: 1, // 如果设置了分布，首页页码
                //search : true, // 是否显示搜索框
                showColumns: false, // 是否显示内容下拉框（选择显示的列）
                sidePagination: "server", // 设置在哪里进行分页，可选值为"client" 或者 "server"
                queryParams: function (params) {
                    return {
                        //说明：传入后台的参数包括offset开始索引，limit步长，sort排序列，order：desc或者,以及所有列的键值对
                        limit: params.limit,
                        offset: params.offset,
                        searchName: $('#searchName').val(),
                        // username:$('#searchName').val()
                        createTimeStart: $("#createTimeStart").val(),
                        startTimeStart: $("#startTimeStart").val(),
                        createTimeEnd: $("#createTimeEnd").val(),
                        startTimeEnd: $("#startTimeEnd").val(),
                        state: $("#state").val()
                    };
                },
                // //请求服务器数据时，你可以通过重写参数的方式添加一些额外的参数，例如 toolbar 中的参数 如果
                // queryParamsType = 'limit' ,返回参数必须包含
                // limit, offset, search, sort, order 否则, 需要包含:
                // pageSize, pageNumber, searchText, sortName,
                // sortOrder.
                // 返回false将会终止请求
                columns: [
                    {
                        checkbox: true
                    },
                    {
                        field: 'taskName',
                        title: '任务名称'
                    },
                    {
                        field: 'taskNum',
                        title: '任务编号'
                    },
                    {
                        field: 'total',
                        title: '派券总数'
                    },
                    {
                        field: 'stateDesc',
                        title: '状态',
                        formatter: function (value, row, index) {
                            if (row.state == 2) {
                                return '<span style="color:green">' + row.stateDesc + '</span>'
                            } else if (row.state == 3) {
                                return '<span style="color:darkgrey">' + row.stateDesc + '</span>'
                            } else if (row.state == 4) {
                                return '<span style="color:red">' + row.stateDesc + '</span>'
                            } else {
                                return row.stateDesc;
                            }
                        }
                    },
                    {
                        field: 'createName',
                        title: '创建人'
                    }, {
                        field: 'createTimeFormat',
                        title: '创建时间'
                    }, {
                        field: 'startTimeFormat',
                        title: '派发时间'
                    },
                    {
                        title: '操作',
                        field: 'id',
                        align: 'center',
                        formatter: function (value, row, index) {
                            var e = '<a class="btn btn-primary btn-sm ' + s_edit_h + '" href="#" mce_href="#"  onclick="view(\''
                                + row.id
                                + '\')">查看</a> ';
                            var d = '<a class="btn btn-warning btn-sm ' + s_remove_h + '" href="#"   mce_href="#" onclick="sendAgain(\''
                                + row.id
                                + '\')">再次派发</a> ';
                            var f = '';
                            if (row.state == 1) {
                                f = '<a class="btn btn-danger btn-sm' + s_resetPwd_h + '" href="#"  mce_href="#" onclick="revoke(\''
                                    + row.id
                                    + '\')"></i>撤销任务</a> ';
                            }
                            return e + d + f;
                        }
                    }]
            });
}

function sendAgain(id) {
    var width = $(window).width() + 'px';
    var height = $(window).height() + 'px';
    layer.open({
        type: 2,
        title: '再次派发',
        maxmin: true,
        shadeClose: false, // 点击遮罩关闭层
        area: [width, height],
        content: prefix + '/sendAgain/' + id // iframe的url
    });
}

function reLoad() {
    if (!$("#createTimeFormat").val()) {
        $("#createTimeStart").val("");
        $("#createTimeEnd").val("");
    }
    if (!$("#startTimeFormat").val()) {
        $("#startTimeStart").val("")
        $("#startTimeEnd").val("")
    }
    $('#exampleTable').bootstrapTable('refresh');
}

function add() {
    var width = $(window).width() + 'px';
    var height = $(window).height() + 'px';
    layer.open({
        type: 2,
        title: '增加',
        maxmin: true,
        shadeClose: false, // 点击遮罩关闭层
        area: [width, height],
        content: prefix + '/add' // iframe的url
    });
}

function edit(id) {
    var width = $(window).width() * 0.8 + 'px';
    var height = $(window).height() * 0.8 + 'px';
    layer.open({
        type: 2,
        title: '编辑',
        maxmin: true,
        shadeClose: false, // 点击遮罩关闭层
        area: [width, height],
        content: prefix + '/edit/' + id // iframe的url
    });
}

function view(id) {
    var width = $(window).width() + 'px';
    var height = $(window).height() + 'px';
    layer.open({
        type: 2,
        title: '查看任务详情',
        maxmin: true,
        shadeClose: false, // 点击遮罩关闭层
        area: [width, height],
        content: prefix + '/view/' + id // iframe的url
    });
}

function revoke(id) {
    //撤销提示框
    layer.open({
        id: id,
        type: 1,
        title: '撤销理由',
        skin: 'layui-layer-rim',
        area: ['450px', 'auto'],

        content: ' <div class="row" style="width: 420px;  margin-left:7px; margin-top:10px;">'
            + '<div class="col-sm-12" style="text-align: right">'
            + '<div class="input-group">'
            + '<span style="color: red;">*</span>请输入撤销理由:'
            + '</div>'
            + '<textarea id="revokeReason" maxlength="100" style="width: 100%;height: 80px;"></textarea>'
            + '<span id ="num_txt">0/100</span>'
            + '</div>'
            + '</div>'
        ,
        btn: ['保存', '取消'],
        btn1: function (index, layero) {
            $.ajax({
                type: "POST",
                url: ctx + "cardcecp/batchSendEcpTask/update",
                data: {id: id, state: 4, revokeReason: $("#revokeReason").val()},
                async: false,
                error: function (request) {
                    parent.layer.alert("Connection error");
                },
                success: function (data) {
                    reLoad();
                    parent.layer.msg(data.msg);
                    layer.close(index);
                }
            });
        },
        btn2: function (index, layero) {
            layer.close(index);
        }

    });

    //输入框字数提示
    $('#revokeReason').on('keyup', function () {
        var txtval = $('#revokeReason').val().length;
        if (txtval > 0) {
            $('#num_txt').html(txtval + '/100');
        } else {
            $('#num_txt').html('100/100');
            $('#revokeReason').val($('#revokeReason').val().substring(0, 100)); //这里意思是当里面的文字小于等于0的时候，那么字数不能再增加，只能是600个字
        }
    });
}

